সি# এ ফাইল পরিচালনার জন্য File এবং FileInfo ক্লাস দুটি প্রচলিতভাবে ব্যবহৃত হয়। এ দুটি ক্লাসের ব্যবহার এবং পার্থক্য নিয়ে এখানে আলোচনা করা হলো।
File ক্লাস হলো একটি স্ট্যাটিক ক্লাস যা সরাসরি বিভিন্ন ফাইল অপারেশন (যেমন তৈরি করা, মুছে ফেলা, কপি করা, ইত্যাদি) সম্পাদন করতে ব্যবহৃত হয়। File
ক্লাসে থাকা মেথডগুলো সরাসরি ফাইলের ওপর কাজ করে এবং প্রতিবার কল করার সময় নতুন করে অবজেক্ট তৈরি করা লাগে না।
File ক্লাসের কয়েকটি গুরুত্বপূর্ণ মেথড:
File.Create
- নতুন একটি ফাইল তৈরি করে।File.Delete
- নির্দিষ্ট ফাইল মুছে ফেলে।File.Copy
- ফাইল কপি করে।File.Move
- ফাইল সরিয়ে দেয়।File.Exists
- ফাইল আছে কি না তা পরীক্ষা করে।using System;
using System.IO;
public class Program
{
public static void Main()
{
string filePath = "example.txt";
// ফাইল তৈরি করা এবং লেখা
if (!File.Exists(filePath))
{
File.WriteAllText(filePath, "Hello, this is written using File class.");
Console.WriteLine("File created and data written.");
}
// ফাইল থেকে পড়া
string content = File.ReadAllText(filePath);
Console.WriteLine("Content of the file:");
Console.WriteLine(content);
// ফাইল মুছে ফেলা
File.Delete(filePath);
Console.WriteLine("File deleted.");
}
}
এখানে:
File.WriteAllText
ফাইলে ডেটা লেখার জন্য ব্যবহৃত হয়েছে।File.ReadAllText
ফাইল থেকে ডেটা পড়ে এবং File.Delete
ফাইলটি মুছে দেয়।FileInfo ক্লাস একটি নন-স্ট্যাটিক ক্লাস, যা ফাইলের বিভিন্ন প্রপার্টি এবং মেথড সরবরাহ করে। FileInfo
ক্লাস প্রতিবার একটি নতুন অবজেক্ট তৈরি করে এবং এর মাধ্যমে ফাইলের বিভিন্ন অপারেশন করা হয়। FileInfo
ক্লাস ফাইল সম্পর্কিত বিভিন্ন প্রপার্টি, যেমন - Length
, CreationTime
, Extension
, ইত্যাদি পাওয়ার জন্য কার্যকর।
FileInfo ক্লাসের কয়েকটি গুরুত্বপূর্ণ মেথড:
Create
- নতুন একটি ফাইল তৈরি করে।Delete
- ফাইল মুছে ফেলে।CopyTo
- ফাইল কপি করে।MoveTo
- ফাইল সরিয়ে দেয়।Open
- ফাইলকে পড়া বা লেখার জন্য ওপেন করে।using System;
using System.IO;
public class Program
{
public static void Main()
{
string filePath = "example.txt";
FileInfo fileInfo = new FileInfo(filePath);
// ফাইল তৈরি করা এবং লেখা
if (!fileInfo.Exists)
{
using (StreamWriter writer = fileInfo.CreateText())
{
writer.WriteLine("Hello, this is written using FileInfo class.");
}
Console.WriteLine("File created and data written.");
}
// ফাইল থেকে পড়া
using (StreamReader reader = fileInfo.OpenText())
{
string content = reader.ReadToEnd();
Console.WriteLine("Content of the file:");
Console.WriteLine(content);
}
// ফাইল প্রপার্টি দেখা
Console.WriteLine("File Info:");
Console.WriteLine("File Name: " + fileInfo.Name);
Console.WriteLine("File Size: " + fileInfo.Length + " bytes");
Console.WriteLine("Creation Time: " + fileInfo.CreationTime);
// ফাইল মুছে ফেলা
fileInfo.Delete();
Console.WriteLine("File deleted.");
}
}
এখানে:
FileInfo.CreateText
মেথড ব্যবহার করে ফাইলে লেখা হয়েছে।FileInfo.OpenText
মেথড ব্যবহার করে ফাইল থেকে ডেটা পড়া হয়েছে।fileInfo.Name
, fileInfo.Length
, fileInfo.CreationTime
প্রপার্টির মাধ্যমে ফাইলের নাম, সাইজ এবং তৈরিকৃত সময় দেখা গেছে।বৈশিষ্ট্য | File ক্লাস | FileInfo ক্লাস |
---|---|---|
টাইপ | স্ট্যাটিক ক্লাস | নন-স্ট্যাটিক ক্লাস |
অবজেক্ট তৈরির প্রয়োজন | প্রতিবার মেথড কলের জন্য অবজেক্ট তৈরির প্রয়োজন নেই | প্রতিবার একটি নতুন অবজেক্ট তৈরি করতে হয় |
ফাইল প্রপার্টি | সরাসরি প্রপার্টি ব্যবহার করা যায় না | প্রপার্টি যেমন Length , CreationTime , Extension ইত্যাদি সরাসরি পাওয়া যায় |
ব্যবহার ক্ষেত্র | সরাসরি সাধারণ কাজের জন্য উপযুক্ত | নির্দিষ্ট ফাইলের বিস্তারিত কাজের জন্য উপযুক্ত |
File এবং FileInfo উভয় ক্লাসই ফাইল পরিচালনা করতে সক্ষম, তবে ব্যবহারের ক্ষেত্রে নির্দিষ্ট প্রয়োজন অনুযায়ী ক্লাস নির্বাচন করা উচিত।
আরও দেখুন...